package bishiqiangxun;
import java.util.*;
public class Text2 {
    //题目 ： 笔试强训day 33 第二题 ： 包含不超过两种字符的 最长子串
    //算法 :哈希表 + 滑动窗口
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        String str = in.next();
        //建立一个哈希表  方便记录每种字符的个数
        int[] hash = new int[128];
        //滑动窗口 + 哈希表
        int n = str.length();
        int left = 0;
        int right = 0;
        int count = 0;
        int maxLen = 0;

        while(right < n) {
            char ch = str.charAt(right);
            //判断一下哈希表里面有没有这个字符
            if(hash[(ch-'0')] == 0) {
                //没有就是新的种类字符
                count++;
            }
            hash[ch-'0']++;

            while(count > 2) {
                //出窗口
                char c = str.charAt(left);
                hash[c-'0']--;
                if(hash[c-'0'] == 0) {
                    count--;  //没有这种字符所以要--
                }
                left++;
            }
            //更新结果
            maxLen = Math.max(maxLen,right-left+1);
            right++;
        }
        System.out.println(maxLen);
    }
}
